#!/usr/bin/env python3
"""
快速设置脚本 - 交互式创建受试者目录结构
"""

import sys
from pathlib import Path
from create_subject_dirs import SubjectDirectoryCreator


def main():
    """交互式主函数"""
    print("🏥 医学图像项目目录结构快速设置工具")
    print("=" * 50)
    
    # 获取项目根目录
    default_base_dir = ".."
    base_dir = input(f"请输入项目根目录路径 (默认: {default_base_dir}): ").strip()
    if not base_dir:
        base_dir = default_base_dir
    
    # 检查目录是否存在
    base_path = Path(base_dir)
    if not base_path.exists():
        print(f"❌ 目录不存在: {base_path}")
        sys.exit(1)
    
    print(f"✓ 使用项目根目录: {base_path.resolve()}")
    
    # 获取受试者ID列表
    print("\n请输入受试者ID列表:")
    print("提示: 可以输入多个ID，用空格分隔")
    print("示例: CHEN-REN-GENG DJY BCR FANG-SUO-GEN")
    
    subjects_input = input("受试者ID: ").strip()
    if not subjects_input:
        print("❌ 未输入受试者ID")
        sys.exit(1)
    
    subject_ids = subjects_input.split()
    print(f"✓ 将为以下受试者创建目录: {', '.join(subject_ids)}")
    
    # 预览目录结构
    print(f"\n📁 将创建以下目录结构:")
    creator = SubjectDirectoryCreator(base_dir)
    creator.create_subject_directories(subject_ids, dry_run=True)
    
    # 确认创建
    print(f"\n{'='*50}")
    confirm = input("确认创建以上目录结构? (y/N): ").strip().lower()
    
    if confirm in ['y', 'yes', '是']:
        print("\n🚀 开始创建目录结构...")
        if creator.create_subject_directories(subject_ids, dry_run=False):
            print("\n🎉 目录创建成功!")
            print("\n📋 接下来的步骤:")
            print("1. 将预测图像放入 prediction/{subject_id}/ 的相应子目录中")
            print("2. 将分割掩膜放入 segmentation/{subject_id}/ 目录中") 
            print("3. 将参考图像放入 reference/{subject_id}/ 目录中")
            print("4. 运行 'python do_metrics.py' 进行图像处理和指标计算")
        else:
            print("\n❌ 目录创建失败!")
            sys.exit(1)
    else:
        print("\n⏹ 操作已取消")


if __name__ == "__main__":
    main()